1. Field of the Invention
The present invention generally relates to wireless networks, and particularly to mobile systems that have multiple processors that operate multiple data applications which may require wireless network access using a single wireless communication link and a single address.
2. Description of Related Art
Exchanging information between one or more devices is a primary purpose of computer networks. To properly route information from one device to another, each device is assigned an address, and the devices communicate using the assigned addresses. For example, in a typical network, a source device sends packetized data (a series of packets) to a destination using an address assigned to that destination. Upon receipt of the packetized data, the destination sends an acknowledgement to the sender's address.
One widely-used communication protocol is TCP/IP. An IP address is used to route a series of packets from one device to another on the network. In a typical wireless data system, a communication end point is assigned a single IP address. The assigned IP address is then used by one or more networks to route packets through the internet to the particular TCP/IP end point designated by the address.
A cell phone is one example of a mobile station that wirelessly communicates with one or more remote networks for purposes such as uploading and downloading information, and accessing services. Cell phone technology is being improved all the time, adding functionality (e.g., adding position location functions), while at the same time making cell phones smaller and more energy efficient. For these purposes, it may be advantageous to “off-load” some of the processing to external computers and external networks. And, it may be advantageous to store information externally rather than on the cell phone.
It may also be useful to connect a cell phone to another electronic device, such as a portable laptop computer, and provide a network connection through the modem on the cell phone. For purposes herein, the terms “mobile station”, or “mobile system”, encompasses the cell phone and the electronic devices (e.g., laptop computer) to which it is connected.
As more and more functionality is added to cell phones (for example as features such as GPS are implemented), and more devices may be connected to the cell phone (such as laptop computers) additional communication “end points” are created to exchange data with the network. Unfortunately, because these endpoints are connected with the cell phone, these “endpoints” share a common IP address with the device on which they are located (or the device to which they are connected). Thus, whenever data is received, the common IP address creates confusion as to which of the two (or more) endpoints is intended to receive the data.
For example, if more than one data application is operating in the mobile system (for example if one data application resides on a modem, and another data application resides on the host/application device on a laptop) then there is more than one end point that is assigned the single address. The single address creates confusion as to which of the two end points is the destination. For example in a typical system where only one IP address is assigned to the client (MS) side, the data packets could be routed arbitrarily to the either end application, either on the modem processor or on the host processor. To avoid this problem, some wireless systems implement some form of arbitration that allows only one data application or modem application to operate at any one time. Unfortunately, in that system the non-operating application(s) wait idly until the other operations are complete, wasting time and inefficiently using system resources.
In order to solve the problem of multiple end points, it has been suggested to assign multiple IP addresses to the mobile system. In the example where the mobile system includes a modem and a laptop, this would involve assigning one IP address to a modem, and another IP address to the laptop. However, multiple IP addresses would require device support for IP packet routing (a router-which is very complex and would require significant resources and development) and multiple IP addresses also would require PDSN support, all of which make this approach undesirable.